/*
*  Copyright 2019-2020 Zheng Jie
*
*  Licensed under the Apache License, Version 2.0 (the "License");
*  you may not use this file except in compliance with the License.
*  You may obtain a copy of the License at
*
*  http://www.apache.org/licenses/LICENSE-2.0
*
*  Unless required by applicable law or agreed to in writing, software
*  distributed under the License is distributed on an "AS IS" BASIS,
*  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*  See the License for the specific language governing permissions and
*  limitations under the License.
*/
package me.zhengjie.domain;

import lombok.Data;
import cn.hutool.core.bean.BeanUtil;
import io.swagger.annotations.ApiModelProperty;
import cn.hutool.core.bean.copier.CopyOptions;
import javax.persistence.*;
import javax.validation.constraints.*;
import java.io.Serializable;

/**
* @website https://el-admin.vip
* @description /
* @author zcc
* @date 2021-07-15
**/
@Entity
@Data
@Table(name="allsize_technology")
public class AllsizeTechnology implements Serializable {

    @Id
    @Column(name = "tech_id")
    @ApiModelProperty(value = "techId")
    private String techId;

    @Column(name = "as_id")
    @ApiModelProperty(value = "asId")
    private String asId;

    @Column(name = "color")
    @ApiModelProperty(value = "color")
    private String color;

    @Column(name = "tech_1")
    @ApiModelProperty(value = "tech1")
    private String tech1;

    @Column(name = "tech_2")
    @ApiModelProperty(value = "tech2")
    private String tech2;

    @Column(name = "tech_3")
    @ApiModelProperty(value = "tech3")
    private String tech3;

    @Column(name = "tech_4")
    @ApiModelProperty(value = "tech4")
    private String tech4;

    @Column(name = "tech_5")
    @ApiModelProperty(value = "tech5")
    private String tech5;

    @Column(name = "tech_6")
    @ApiModelProperty(value = "tech6")
    private String tech6;

    @Column(name = "tech_7")
    @ApiModelProperty(value = "tech7")
    private String tech7;

    @Column(name = "tech_8")
    @ApiModelProperty(value = "tech8")
    private String tech8;

    @Column(name = "tech_9")
    @ApiModelProperty(value = "tech9")
    private String tech9;

    @Column(name = "tech_10")
    @ApiModelProperty(value = "tech10")
    private String tech10;

    @Column(name = "tech_11")
    @ApiModelProperty(value = "tech11")
    private String tech11;

    @Column(name = "tech_12")
    @ApiModelProperty(value = "tech12")
    private String tech12;

    @Column(name = "tech_13")
    @ApiModelProperty(value = "tech13")
    private String tech13;

    @Column(name = "tech_14")
    @ApiModelProperty(value = "tech14")
    private String tech14;

    @Column(name = "tech_15")
    @ApiModelProperty(value = "tech15")
    private String tech15;

    @Column(name = "tech_16")
    @ApiModelProperty(value = "tech16")
    private String tech16;

    public void copy(AllsizeTechnology source){
        BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true));
    }

    public void copyTo(OrderTechnology source){
        BeanUtil.copyProperties(this, source, CopyOptions.create().setIgnoreNullValue(true));
    }
}